"""
生成器对象
     定义：
        能够动态(循环一次计算一次返回一次)提供数据的可迭代对象。
     作用：
        在循环过程中，按照某种算法推算数据，不必创建容器存储完整的结果，从而节省内存空
        间。数据量越大，优势越明显。以上作用也称之为延迟操作或惰性操作，通俗的讲就是在需要的时候才
        计算结果，而不是一次构建出所有结果。
生成器函数：
    定义：
        含有yield语句的函数，返回值为生成器对象。

    创建：
        def 函数名():
         …
         yield 数据
         …

    调用：
        for 变量名 in 函数名():
"""
# 定义生成器函数
def get_range(stop):
    num = 0
    while num < stop:
        yield num
        num += 1


# 调用生成器函数
for num in get_range(10):
    print(num)